home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple II Magazines (DO)
/
Micro on the Apple Volume 1 (1981)(Micro Ink)[no boot].zip
/
Micro on the Apple Volume 1 (1981)(Micro Ink)[no boot].do
/
SELECT.int
< prev
next >
Wrap
Text File
|
1996-12-24
|
3KB
|
88 lines
0 I=J=Y=N
10 REM ************************
12 REM * *
14 REM * SORTING REVEALED *
16 REM * RICHARD C. VILE, JR. *
18 REM * *
20 REM * SELECT *
22 REM * *
24 REM * COPYRIGHT (C) 1981 *
25 REM * MICRO INK, INC. *
26 REM * CHELMSFORD, MA 01824 *
27 REM * ALL RIGHTS RESERVED *
28 REM * *
29 REM ************************
30 REM
40 TEXT :CALL -936
41 DIM A(99)
42 KBD=-16384:CLR=-16368:TITLE=500:INTRO=1000
44 DISPLAY=600:WAIT=800:CMP=900:INT=950
46 MUSIC=-10473:TIME=766:TIMBRE=765:PITCH=767
47 DELAY=975:ERASE=650
48 GOSUB INTRO
50 GOSUB TITLE
100 FOR I=0 TO N
105 A(I)= RND (100):X=I:GOSUB DISPLAY
110 NEXT I
150 FOR I=0 TO N-1
151 MAX=0
152 VTAB 23:TAB 32:PRINT "I=";:IF I<10 THEN PRINT " ";:PRINT I;
155 FOR J=1 TO N-I
156 KEY= PEEK (KBD):IF KEY<128 THEN 158
157 POKE CLR,0:GOSUB WAIT
158 GOSUB DELAY
159 GOSUB CMP
160 IF A(J)<=A(MAX) THEN 200
163 MAX=J
165 VTAB 24:TAB 32:PRINT "M=";:IF MAX<10 THEN PRINT " ";:PRINT MAX;
168 POKE 50,63
175 X=J:GOSUB DISPLAY
178 POKE 50,255
185 X=J:GOSUB DISPLAY
200 NEXT J
202 TEMP=A(MAX):GOSUB INT
203 A(MAX)=A(N-I):X=MAX: POKE 50,63:GOSUB DISPLAY:GOSUB INT: POKE 50,255:GOSUB DISPLAY
204 A(N-I)=TEMP:X=N-I: POKE 50,63:GOSUB DISPLAY:GOSUB INT: POKE 50,255:GOSUB DISPLAY
212 NEXT I
215 VTAB 24:TAB 15:PRINT "FINISHED";
218 IF PEEK (KBD)<128 THEN 218
220 POKE CLR,0:CALL -936:GOTO 48
500 TEXT :CALL -936
510 VTAB 1:FOR I=0 TO 9:TAB 7+3*I:PRINT I;:NEXT I
515 VTAB 2:TAB 7:FOR I=0 TO 9:PRINT "---";:NEXT I
520 FOR J=0 TO 9:VTAB 3+2*J:TAB 4:PRINT J;"! ";:NEXT J
525 VTAB 23:TAB 13:PRINT "SELECTION SORT"
530 RETURN
600 COL=X MOD 10
610 ROW=X/10
620 VTAB 2*ROW+3:TAB 7+3*COL
630 IF A(X)<10 THEN PRINT " ";
635 PRINT A(X);
640 RETURN
800 IF KEY# ASC("Q") THEN 810
805 TEXT :CALL -936:END
810 IF PEEK (KBD)<128 THEN 810
820 POKE CLR,0:RETURN
900 REM ***TO REMOVE SOUNDS, 901 INSERTED***
901 RETURN
902 POKE PITCH,10: POKE TIME,5:CALL MUSIC
905 GOSUB DELAY
910 RETURN
950 REM ***TO REMOVE SOUNDS, 951 INSERTED***
951 RETURN
952 POKE PITCH,49: POKE TIME,3:CALL MUSIC
955 GOSUB DELAY
960 RETURN
975 FOR DE=1 TO PDL (1):NEXT DE
980 RETURN
1000 VTAB 10:TAB 5:PRINT "I WILL SORT UP TO 100"
1001 TAB 5:PRINT "INTEGERS INTO ASCENDING"
1002 TAB 5:PRINT "ORDER USING THE SELECTION SORT."
1008 VTAB 15:TAB 10:INPUT "VALUE OF N PLEASE",N
1009 N=N-1
1010 IF N>=0 THEN 1013
1012 TEXT :CALL -936:END
1013 IF N<=100 THEN RETURN
1015 TAB 10
1020 PRINT "TO BIG!!!!":GOTO 1000